#!/usr/bin/env python
# -*- coding: UTF-8 -*-
class RK3399Platform():
    """
    从相关的硬件传感器中获得采集到的信息，例如：
    Hilens的图像识别信息（交通灯信息）
    车道识别信息
    雷达扫描信息等

    实现以下函数：
            getTrafficLight()
            getLidarFront()
            getZebraCrossing()
            getLidarSteering()
            getLaneSteering()
            getSpeedLimit()
    """
    def __init__(self, test_pattern):
        self.step_index = 0
        self.test_pattern = test_pattern
        self.traffic_light = 0
        self.lidar_front = 0
        self.zebra_value = 0
        self.lidar_steering_value = 0
        self.lane_steering_value = 0
        self.speed_limit = None

    # 交通信号灯，traffic_valid 0 没有检测到交通信号灯，1 红灯，2绿灯，3黄灯
    def getTrafficLight(self):
        return self.traffic_light
    # 雷达检测前方20度视野内20cm距离内 0 无障碍物，1有障碍物
    def getLidarFront(self):
        return self.lidar_front
    # 斑马线检测，0 前方20cm没有斑马线，1 前方20cm有斑马线
    def getZebraCrossing(self):
        return self.zebra_value
    # 雷达检测左右挡板，0 直行， <0 左转，>0 右转
    def getLidarSteering(self):
        return self.lidar_steering_value
    # 车道线检测信息，None 无检测结果，0 直行， <0 左转，>0 右转
    def getLaneSteering(self):
        return self.lane_steering_value
    # 限速和解除限速标识, None 无检测结果，0 解除限速，1 限速
    def getSpeedLimit(self):
        return self.speed_limit

    # only for test, do nothing in real platform
    def step(self):
        pass

    # only for test, do nothing in real platform
    def examine(self):
        pass
